The present invention generally relates to digital processing apparatus and more specifically relates to techniques for optimizing data storage efficiency.
The earliest digital computers used a fixed-length for all computer program instructions. This fixed-length was established to contain sufficient bit positions to uniquely define each of the computer instructions existent in the computer instruction repertoire. This technique resulted in highly inefficient use of storage in that as machine repertoires became more sophisticated (i.e., different kinds of instructions were added), each instruction needed to be of a greater length (i.e., having more bit positions) to enable unique identification of all instructions. This is further compounded by the fact that as little used, specialized instructions were added, the simpler, often used instructions required more bit positions.
The storage efficiency situation was improved by using multiple format instruction repertoires. In this manner, those instructions requiring fewer bit positions were assigned fractional words or a smaller number of bytes. Those instructions requiring more bit positions were assigned whole and multiple words or a larger number of bytes. Notice, however, that this technique is only a partial solution in that instruction length is related to the requirement of a format. Furthermore, the multiple formats become quite difficult to decode.